Skip to content

gh-146376: Reduce timeout in Emscripten workflow#146378

Open
hoodmane wants to merge 1 commit intopython:mainfrom
hoodmane:emscripten-reduce-ci-timeout
Open

gh-146376: Reduce timeout in Emscripten workflow#146378
hoodmane wants to merge 1 commit intopython:mainfrom
hoodmane:emscripten-reduce-ci-timeout

Conversation

@hoodmane
Copy link
Copy Markdown
Contributor

@hoodmane hoodmane commented Mar 24, 2026

Copy link
Copy Markdown
Member

@webknjaz webknjaz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!

@vstinner
Copy link
Copy Markdown
Member

vstinner commented Mar 25, 2026

Does Emscripten supports faulthandler.dump_traceback_later(timeout, exit=True)? If yes, I would prefer to pass a --timeout=seconds option to the python -m test (...) command (which uses dump_traceback_later()), rather than reducing the CI overall timeout.

@webknjaz
Copy link
Copy Markdown
Member

@vstinner if that's possible, I'd recommend both timeouts (with different values). Also, this sounds like something to do in other jobs too.

Comment on lines +13 to +26
# It seems to take about 20 minutes without the cache, broken down as follows:
# (All times recorded from one run chosen arbitrarily.)
#
# 0.5 install Emscripten (skipped by cache)
# 1.0 configure & build native python
# 0.5 build dependencies (skipped by cache)
# 3.0 configure Emscripten Python
# 1.5 build Emscripten Python
# 0.7 build Emscripten ports (skipped by cache)
# 14.0 Test
#
# So if we add time for a rerun of the entire test suite, we get to 34
# minutes. Adding an extra 5% gets us to 36.
timeout-minutes: 36
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think we need all the calculations here. It can be in the PR description.

And let's round the number. If the time starts being too short, we'll just bump it up a bit.

Suggested change
# It seems to take about 20 minutes without the cache, broken down as follows:
# (All times recorded from one run chosen arbitrarily.)
#
# 0.5 install Emscripten (skipped by cache)
# 1.0 configure & build native python
# 0.5 build dependencies (skipped by cache)
# 3.0 configure Emscripten Python
# 1.5 build Emscripten Python
# 0.7 build Emscripten ports (skipped by cache)
# 14.0 Test
#
# So if we add time for a rerun of the entire test suite, we get to 34
# minutes. Adding an extra 5% gets us to 36.
timeout-minutes: 36
timeout-minutes: 40

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants